package com.glink.manage.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
* @author  xum
* @since 2024-07-01
*/
@Data
@ApiModel(value="IntelligentEquip", description="智能装备信息表")
@TableName("patrol_intelligent_equip")
public class PatrolIntelligentEquip extends Model<PatrolIntelligentEquip> {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "obj_id")
    @TableId(value = "obj_id", type = IdType.INPUT)
    private String objId;

    @ApiModelProperty(value = "所属工程")
    private String constructionWorkId;

    @ApiModelProperty(value = "所属施工现场")
    private String constructionWorkSiteId;

    @ApiModelProperty(value = "设备名称")
    private String patrolDeviceName;

    @ApiModelProperty(value = "设备编码")
    private String patrolDeviceCode;

    @ApiModelProperty(value = "sip用户名")
    private String sipCode;

    @ApiModelProperty(value = "所属品牌(1海康;2大华;3集联科)")
    private String brand;

    @ApiModelProperty(value = "使用类型:10枪机;11球机;12云台;13卡片机;14双目摄像机")
    private String useMode;

    @ApiModelProperty(value = "视频类型:1可见光;2红外;3可见光与红外")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String videoMode;

    @ApiModelProperty(value = "统一视频平台编码")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String videoCode;

    @ApiModelProperty(value = "设备类型:1室外轮式机器人;2室内轮式机器人;3挂轨机器人;10摄像机;11硬盘录像机;12智能分析主机;13无人机;14声纹;15无人机机巢;20区域巡视主机;21边缘节点;90机器人巡视主机;91无人机巡视主机")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String deviceType;

    @ApiModelProperty(value = "设备型号")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String deviceModel;

    @ApiModelProperty(value = "生产日期(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED,exist = false)
    private Date productTime;

    @ApiModelProperty(value = "编码(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED, exist = false)
    private String serialNumber;

    @ApiModelProperty(value = "投运时间")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Date runTime;

    @ApiModelProperty(value = "退运日期")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private Date outageTime;

    @ApiModelProperty(value = "运行状态")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String runStatus;

    @ApiModelProperty(value = "出厂编号")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String productCode;

    @ApiModelProperty(value = "登录账号")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String cameraAccount;

    @ApiModelProperty(value = "登录密码")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String cameraPassword;

    @ApiModelProperty(value = "IP地址")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String ipAddress;

    @ApiModelProperty(value = "mac地址")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String macAddress;

    @ApiModelProperty(value = "端口号")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String portNum;

    @ApiModelProperty(value = "平台接入协议: 1:GB28181协议;2:rtsp协议;3:B接口协议")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String agreement;

    @ApiModelProperty(value = "是否支持云台控制,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String ptz;

    @ApiModelProperty(value = "硬盘录像机开始通道号/声纹通道数")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String channelNumber;

    @ApiModelProperty(value = "硬盘录像机总存储(单位TB)")
    private String storage;

    @ApiModelProperty(value = "红外功能是否开启,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String infrared;

    @ApiModelProperty(value = "可见光功能是否开启,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String visibleLight;

    @ApiModelProperty(value = "黑夜功能是否开启,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String night;

    @ApiModelProperty(value = "移动侦探功能是否开启,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String move;

    @ApiModelProperty(value = "雨刷功能是否开启,0为false，1为true")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String wiper;

    @ApiModelProperty(value = "生产厂家")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String manufacturer;

    @ApiModelProperty(value = "使用单位id")
    private String useUnit;

    @ApiModelProperty(value = "使用单位名称")
    private String useUnitName;

    @ApiModelProperty(value = "安装位置")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String place;

    @ApiModelProperty(value = "是否局域网,0为false，1为true")
    private String lan;

    @ApiModelProperty(value = "备注信息")
    private String remark;

    @ApiModelProperty(value = "是否轮转:0不轮转;1轮转(当装置类型为机器人时)")
    private String transport;

    @ApiModelProperty(value = "设备主人")
    private String equipmentOwner;

    @ApiModelProperty(value = "铭牌图片")
    private String nameplateImage;

    @ApiModelProperty(value = "正面图片")
    private String frontImage;

    @ApiModelProperty(value = "背面图片")
    private String backImage;

    @ApiModelProperty(value = "左侧图片")
    private String leftImage;

    @ApiModelProperty(value = "右侧图片")
    private String rightImage;

    @ApiModelProperty(value = "同步失败原因")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String syncFailMsg;

    @ApiModelProperty(value = "同步失败时间")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String syncFailTime;

    @ApiModelProperty(value = "同步时间")
    private String syncTime;

    @ApiModelProperty(value = "同步状态")
    private String syncStatus;

    @ApiModelProperty(value = "摄像机是否在线,0为false，1为true")
    private String isOnline;

    @ApiModelProperty(value = "是否发送给分析主机 0否 1是")
    @TableField(exist = false)
    private String sendAnalysisHost;

    @ApiModelProperty(value = "所属主设备")
    private String mainEquipId;

    @ApiModelProperty(value = "防水等级(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String waterproofLevel;

    @ApiModelProperty(value = "阵列功耗(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String arrayConsumption;

    @ApiModelProperty(value = "工作温度范围(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String temperatureRange;

    @ApiModelProperty(value = "阵列重量(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String arrayWeight;

    @ApiModelProperty(value = "灵敏度(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String sensitivity;

    @ApiModelProperty(value = "频响范围(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String frequencyRange;

    @ApiModelProperty(value = "采样频率(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String samplingFrequency;

    @ApiModelProperty(value = "阵列孔径(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String arrayAperture;

    @ApiModelProperty(value = "阵元个数(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String arrayElementNum;

    @ApiModelProperty(value = "采集功能(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String collectionFunction;

    @ApiModelProperty(value = "报警功能(声纹)")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String policeFunction;

    @ApiModelProperty(value = "安全起飞高度")
    @TableField(exist = false)
    private String takeOffSecurityHeight;

    @ApiModelProperty(value = "是否已删除，0为false，1为true")
    @TableLogic(value = "0",delval = "1")
    private String deleteState;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty(value = "创建人姓名")
    @TableField(fill = FieldFill.INSERT)
    private String createUserName;

    @ApiModelProperty(value = "创建人ID")
    @TableField(fill = FieldFill.INSERT)
    private String createUserId;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    @ApiModelProperty(value = "更新人姓名")
    @TableField(fill = FieldFill.UPDATE)
    private String updateUserName;

    @ApiModelProperty(value = "更新人ID")
    @TableField(fill = FieldFill.UPDATE)
    private String updateUserId;
}
